<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>GraphChi: graphchi::sharder&lt; EdgeDataType &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">GraphChi
   &#160;<span id="projectnumber">0.1</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacegraphchi.html">graphchi</a></li><li class="navelem"><a class="el" href="classgraphchi_1_1sharder.html">sharder</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-types">Protected Types</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a>  </div>
  <div class="headertitle">
<div class="title">graphchi::sharder&lt; EdgeDataType &gt; Class Template Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><a href="classgraphchi_1_1sharder-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a154e6a892051324add3f47c73d7f4234"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a154e6a892051324add3f47c73d7f4234"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>sharder</b> (std::string basefilename)</td></tr>
<tr class="memitem:ac40c871c768a7ee47d9a1f79dbe20769"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac40c871c768a7ee47d9a1f79dbe20769"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>preprocessed_name</b> ()</td></tr>
<tr class="memitem:a9473263ad2cfc83c11100e7cf253e10c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgraphchi_1_1sharder.html#a9473263ad2cfc83c11100e7cf253e10c">preprocessed_file_exists</a> ()</td></tr>
<tr class="memitem:ac867bb6b0f8e420f790b60f2c18f2a6b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgraphchi_1_1sharder.html#ac867bb6b0f8e420f790b60f2c18f2a6b">start_preprocessing</a> ()</td></tr>
<tr class="memitem:aebb6e75ba00e4f4016b9559e45254142"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgraphchi_1_1sharder.html#aebb6e75ba00e4f4016b9559e45254142">end_preprocessing</a> ()</td></tr>
<tr class="memitem:ad902ff8fdee18b7eb5193fabd25d8d49"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgraphchi_1_1sharder.html#ad902ff8fdee18b7eb5193fabd25d8d49">preprocessing_add_edge</a> (vid_t from, vid_t to, EdgeDataType val)</td></tr>
<tr class="memitem:ae57e42f648104bf6b6ee23d7cf957696"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ae57e42f648104bf6b6ee23d7cf957696"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgraphchi_1_1sharder.html#ae57e42f648104bf6b6ee23d7cf957696">bwrite</a> (int f, char *buf, char *&amp;bufptr, T val)</td></tr>
<tr class="memitem:a8c1af4eca3037578aa7bd5b7cc431c8c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgraphchi_1_1sharder.html#a8c1af4eca3037578aa7bd5b7cc431c8c">execute_sharding</a> (std::string nshards_string)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pro-types"></a>
Protected Types</h2></td></tr>
<tr class="memitem:aa07510f38cbd121b59bfed30c1dfb850"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa07510f38cbd121b59bfed30c1dfb850"></a>
typedef char&#160;</td><td class="memItemRight" valign="bottom"><b>dummy_t</b></td></tr>
<tr class="memitem:ab87457be740353ed245885f3b921a8d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab87457be740353ed245885f3b921a8d4"></a>
typedef <a class="el" href="classgraphchi_1_1sliding__shard.html">sliding_shard</a>&lt; int, <br class="typebreak"/>
dummy_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>slidingshard_t</b></td></tr>
<tr class="memitem:aba1a19eb60bbd464dc9b1252b3518120"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba1a19eb60bbd464dc9b1252b3518120"></a>
typedef <a class="el" href="classgraphchi_1_1memory__shard.html">memory_shard</a>&lt; int, <br class="typebreak"/>
dummy_t &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>memshard_t</b></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:ab30874a25a6acd970085966ee2f12a3d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgraphchi_1_1sharder.html#ab30874a25a6acd970085966ee2f12a3d">determine_number_of_shards</a> (std::string nshards_string)</td></tr>
<tr class="memitem:ae6e11b2521a2174970d57bea906570eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6e11b2521a2174970d57bea906570eb"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>compute_partitionintervals</b> ()</td></tr>
<tr class="memitem:a0fb8626e31a393ff0f8e03e670b54932"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0fb8626e31a393ff0f8e03e670b54932"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>shovel_filename</b> (int shard)</td></tr>
<tr class="memitem:ac48a3f303c10a24226a8b2ddfd6c15ba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac48a3f303c10a24226a8b2ddfd6c15ba"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>start_phase</b> (int p)</td></tr>
<tr class="memitem:a9ee4ebf6999446a43b552d9161252cd4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ee4ebf6999446a43b552d9161252cd4"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>end_phase</b> ()</td></tr>
<tr class="memitem:a45a0c0468d510d18bd266e78aeefbf0e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a45a0c0468d510d18bd266e78aeefbf0e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>swrite</b> (int shard, <a class="el" href="structgraphchi_1_1edge__with__value.html">edge_t</a> et)</td></tr>
<tr class="memitem:a790531efc976434f47faf38d64bfc5db"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a790531efc976434f47faf38d64bfc5db"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>receive_edge</b> (vid_t from, vid_t to, EdgeDataType value)</td></tr>
<tr class="memitem:acba67408a81dfaa5fdac73c1d61f4631"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgraphchi_1_1sharder.html#acba67408a81dfaa5fdac73c1d61f4631">write_shards</a> ()</td></tr>
<tr class="memitem:a58624ccf4e80bb120bd98a40d0732a6c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a58624ccf4e80bb120bd98a40d0732a6c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>create_degree_file</b> ()</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a584708db535566f54ec5f5942a292c7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a584708db535566f54ec5f5942a292c7c"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>basefilename</b></td></tr>
<tr class="memitem:a08d1164d02e9686966d12a04ea9fd124"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a08d1164d02e9686966d12a04ea9fd124"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>binfile_fd</b></td></tr>
<tr class="memitem:a3f67822d9b47f7f4c5cbb6eb1ce0b7b2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f67822d9b47f7f4c5cbb6eb1ce0b7b2"></a>
vid_t&#160;</td><td class="memItemRight" valign="bottom"><b>max_vertex_id</b></td></tr>
<tr class="memitem:a0c98e44f268b4a9eef2315d997ebffde"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c98e44f268b4a9eef2315d997ebffde"></a>
char *&#160;</td><td class="memItemRight" valign="bottom"><b>prebuf</b></td></tr>
<tr class="memitem:a8e1b50fc24fa8476163ea6d94058bcaf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8e1b50fc24fa8476163ea6d94058bcaf"></a>
char *&#160;</td><td class="memItemRight" valign="bottom"><b>prebufptr</b></td></tr>
<tr class="memitem:ade8be348de3e5433b04848ce8b0e2052"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade8be348de3e5433b04848ce8b0e2052"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><b>bytes_preprocessed</b></td></tr>
<tr class="memitem:a65480c00804d2386d98949b5be47288e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65480c00804d2386d98949b5be47288e"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>nshards</b></td></tr>
<tr class="memitem:aa9113a310efa6851fcb1800145ffa276"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa9113a310efa6851fcb1800145ffa276"></a>
std::vector&lt; std::pair&lt; vid_t, <br class="typebreak"/>
vid_t &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>intervals</b></td></tr>
<tr class="memitem:a2e088639c4260119b72e772995f1e867"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e088639c4260119b72e772995f1e867"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>phase</b></td></tr>
<tr class="memitem:a26996b1b1765e5e773ce2759ab85826b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26996b1b1765e5e773ce2759ab85826b"></a>
int *&#160;</td><td class="memItemRight" valign="bottom"><b>edgecounts</b></td></tr>
<tr class="memitem:a144c64b4441ed5fd3b8d3ddbce4ce76f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a144c64b4441ed5fd3b8d3ddbce4ce76f"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>vertexchunk</b></td></tr>
<tr class="memitem:ae649eaf749e2fa7b2d777b286f259afe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae649eaf749e2fa7b2d777b286f259afe"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><b>nedges</b></td></tr>
<tr class="memitem:a7ec80b9aafcbf96697fccc44149a46b6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ec80b9aafcbf96697fccc44149a46b6"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>prefix</b></td></tr>
<tr class="memitem:a03b36e48ba6372f1cb67d96c5eb57192"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03b36e48ba6372f1cb67d96c5eb57192"></a>
int *&#160;</td><td class="memItemRight" valign="bottom"><b>shovelfs</b></td></tr>
<tr class="memitem:aa27dd52b9f997a03326a672ca654c7f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa27dd52b9f997a03326a672ca654c7f4"></a>
<a class="el" href="structgraphchi_1_1edge__with__value.html">edge_t</a> **&#160;</td><td class="memItemRight" valign="bottom"><b>bufs</b></td></tr>
<tr class="memitem:ac277fc856d284d3eaf0899b98d21acaa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac277fc856d284d3eaf0899b98d21acaa"></a>
int *&#160;</td><td class="memItemRight" valign="bottom"><b>bufptrs</b></td></tr>
<tr class="memitem:a8529a3d24c8e7fbd5cb4098a9fa1daab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8529a3d24c8e7fbd5cb4098a9fa1daab"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><b>bufsize</b></td></tr>
<tr class="memitem:a616998e4bcb049353ebf6b48e1ce91d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a616998e4bcb049353ebf6b48e1ce91d8"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><b>edgedatasize</b></td></tr>
<tr class="memitem:a56096a7a8073c3a924725f114b85228e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56096a7a8073c3a924725f114b85228e"></a>
<a class="el" href="classgraphchi_1_1metrics.html">metrics</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m</b></td></tr>
<tr class="memitem:a102dc74b86feb6900d590c5e229f7c81"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a102dc74b86feb6900d590c5e229f7c81"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>lastpart</b></td></tr>
</table>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ae57e42f648104bf6b6ee23d7cf957696"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename EdgeDataType&gt; </div>
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classgraphchi_1_1sharder.html">graphchi::sharder</a>&lt; EdgeDataType &gt;::bwrite </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>f</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&amp;&#160;</td>
          <td class="paramname"><em>bufptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Buffered write function </p>

</div>
</div>
<a class="anchor" id="ab30874a25a6acd970085966ee2f12a3d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename EdgeDataType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classgraphchi_1_1sharder.html">graphchi::sharder</a>&lt; EdgeDataType &gt;::determine_number_of_shards </td>
          <td>(</td>
          <td class="paramtype">std::string&#160;</td>
          <td class="paramname"><em>nshards_string</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Sharding. This code might be hard to read - modify very carefully! </p>

</div>
</div>
<a class="anchor" id="aebb6e75ba00e4f4016b9559e45254142"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename EdgeDataType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classgraphchi_1_1sharder.html">graphchi::sharder</a>&lt; EdgeDataType &gt;::end_preprocessing </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Call to finish the preprocessing session. </p>

</div>
</div>
<a class="anchor" id="a8c1af4eca3037578aa7bd5b7cc431c8c"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename EdgeDataType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="classgraphchi_1_1sharder.html">graphchi::sharder</a>&lt; EdgeDataType &gt;::execute_sharding </td>
          <td>(</td>
          <td class="paramtype">std::string&#160;</td>
          <td class="paramname"><em>nshards_string</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Executes sharding. </p>
<dl class="params"><dt>Parameters:</dt><dd>
  <table class="params">
    <tr><td class="paramname">nshards_string</td><td>the number of shards as a number, or "auto" for automatic determination </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a9473263ad2cfc83c11100e7cf253e10c"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename EdgeDataType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classgraphchi_1_1sharder.html">graphchi::sharder</a>&lt; EdgeDataType &gt;::preprocessed_file_exists </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Checks if the preprocessed binary temporary file of a graph already exists, so it does not need to be recreated. </p>

</div>
</div>
<a class="anchor" id="ad902ff8fdee18b7eb5193fabd25d8d49"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename EdgeDataType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classgraphchi_1_1sharder.html">graphchi::sharder</a>&lt; EdgeDataType &gt;::preprocessing_add_edge </td>
          <td>(</td>
          <td class="paramtype">vid_t&#160;</td>
          <td class="paramname"><em>from</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vid_t&#160;</td>
          <td class="paramname"><em>to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">EdgeDataType&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Add edge to be preprocessed </p>

</div>
</div>
<a class="anchor" id="ac867bb6b0f8e420f790b60f2c18f2a6b"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename EdgeDataType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classgraphchi_1_1sharder.html">graphchi::sharder</a>&lt; EdgeDataType &gt;::start_preprocessing </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Call to start a preprocessing session. </p>

</div>
</div>
<a class="anchor" id="acba67408a81dfaa5fdac73c1d61f4631"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename EdgeDataType&gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classgraphchi_1_1sharder.html">graphchi::sharder</a>&lt; EdgeDataType &gt;::write_shards </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Write the shard by sorting the shovel file and compressing the adjacency information. To support different shard types, override this function! </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/preprocessing/<a class="el" href="sharder_8hpp_source.html">sharder.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Jul 5 2012 00:11:20 for GraphChi by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.1
</small></address>
</body>
</html>
